Controlling mobile terminals

ABSTRACT

For an automatic control of a mobile terminal, a method is proposed for the control of a mobile terminal by receiving a set of control commands in a mobile terminal comprising a processor, a subscriber module and a communications unit, storing a set of control commands in a memory of a subscriber module of a mobile terminal, and activating of functions of the mobile terminal by the subscriber module as a function of commands of the set of control commands via an interface between the subscriber module and the mobile terminal.

The application relates to a method for the controlling mobileterminals. The application further relates to a mobile terminal, to asystem having a mobile terminal and a background system and to acomputer program for controlling a mobile terminal.

Nowadays, mobile terminals for wireless communication, for examplemobile telephones, smartphones, PDAs (Personal Digital Assistants),mobile games consoles, mobile multimedia apparatuses, mobile camerashaving communication functions or else other mobile communicationsdevices have a large number of functions. In recent years, as a resultof constant and rapid technical and economic ongoing development, thefunctions and thus the complexity within mobile terminals haveconstantly increased. This relates not only to the basic technology, forexample the various transmission methods, such as for example GSM, CDMA,WCDMA, UMTS and the like, but also to programs. Programs may be, forexample, basic software applications, such as for example the ShortMessage Service (SMS), Multimedia Message Service (MMS), WirelessApplication Protocol (WAP) and the like, or else execution platforms forexecuting supplementary programs. Execution platforms may, for example,be Java, J2ME, Symbian C++, Windows Mobile, Brew, Flash Lite, Linux orthe like. Other operating systems are also the subject-matter of theapplication. In addition to the execution platforms, programs may alsobe software applications or value-added services. Software applicationsor value-added services may, for example, be Push-to-Talk over Cellular(POC), Instant Messaging (IM), Instant Messaging Presence Services(IMPS), Digital Rights Management (DRM), Streaming, Mobile Television,Mobile Music, Web Browsing or the like.

The provision of the various software applications and value-addedservices leads to increased complexity in the apparatuses. Networkoperators attach increased importance to the software applications andvalue-added services provided functioning in flawless manner. In orderto keep up customer satisfaction, it is necessary that the mobilecommunications customers be equipped at all times with functioningprograms, services and value-added services. For network operators, itis not acceptable for software errors to give rise to problems in theuse of the value-added services. Nor is it desirable, for economicreasons, for customers to engage, each time a problem occurs with thesoftware, a member of staff in a customer centre to solve the problem.

It is therefore economically necessary to automate, as far as possible,testing both of new and of old technologies and programs or value-addedservices in order to be able in any way to carry out the necessary testsin reasonable time and with the necessary quality. This criterion is, inparticular, necessary in order to keep up the time to market and theservice quality.

However, in practice, an increasingly large number of terminals may beseen to reach the market in ever shorter time. The programs orvalue-added services offered by the network operators have to functionon these various terminals which provide a broad range of operatingsystems. It also occurs that, as a result of the increasingly shortproduct cycles, the new devices are delivered with software bugs. Thesesoftware bugs cause problems with the value-added services and irritatecustomers.

A further drawback is the fact that new services must function straightaway in order to be accepted by the customer. Services which have to belaboriously configured by customers and in many cases do not work aresoon rejected by customers and market penetration becomes almostimpossible. The entire value creation chain therefore requiresoperative, well-tested value-added services to be brought to the market.

Untested value-added services can lead to crashes of the executionplatforms of mobile terminals. That can lead to the mobile terminals nolonger functioning and no longer being able to be used by the users.This leads, on the one hand, to the mobile communications operators andterminal manufacturers having to repair the apparatuses, usually withinthe guarantee period; this leads to considerable costs. On the otherhand, the customers cannot use the apparatuses during the repair timeand the mobile communications operators lose earnings as a result.

For the aforementioned reasons, both mobile communications operators andterminal manufacturers carry out a broad range of tests with theapparatuses. These tests involve testing the execution platforms and thebasic software applications. The software applications, programs andvalue-added services are also extensively tested.

Manual tests are, for example, used for this purpose. In manual tests, ahuman tester personally performs actions. These actions may be, forexample, the pressing of keys in a predetermined sequence in accordancewith a predefined test. The reactions caused by the keystrokes on theterminals are logged and registered manually. By carrying out thepredefined test scenarios and test sequences, it is possible to rule outa large number of errors. However, the manual inputting of the keyinputs in accordance with the test sequence is time-consuming and leadsto high costs. Owing to the manufacturers', suppliers' and also mobilecommunications operators' limited test resources, it is therefore notpossible to test out all the terminals completely.

It is also possible for a sequence of keystrokes to be programmed withthe aid of a robot. The mobile terminal is operated by the robot in thatthe robot presses the keys as it is programmed to do. The actions andfunctional states of the mobile telephones that are triggered by thekeys are monitored and logged either manually or automatically. Anyerrors may be avoided based on the test results.

It is also known to test software applications and value-added serviceswith the aid of software agents. For this purpose, it is proposed toload the software agents onto the mobile terminals. The software agentsloaded onto the mobile terminals are stored in the memory of the mobileterminal and executed by the processor of the mobile terminal. A testsequence is stored in the mobile agent. When the agents are executed bythe processor present in the mobile terminal, the predefined procedureis carried out. All the agents' actions generate a result which can beregistered by the agent and can, for example, automatically be comparedwith a desired value. It is also possible for the agent to store theresults and transmit them to the mobile communications network.

As a result of the fact that the agents are executed on the processorsof the mobile telephone themselves, it can occur that the agentsinfluence the software applications and value-added services to betested. For example, it is possible, in the event of a program errorwithin the agent itself, for the test sequence to lead to an error.However, this error resides not in the program or value-added serviceitself to be tested, but in the software agent. However, the softwareagent cannot tell that it itself caused the error. In this case, findingout the cause of the detected error is complex and laborious.

In addition, it is possible to automatically configure the value-addedservices and software applications for various network operators. Amethod for the configuration of a mobile terminal is, for example, knownfrom DE 10 2004 049 611 A1. In this case, a subscriber module transmitsa request of configuration data to a background system, for example amobile communications network, for example a cellular communicationsnetwork. As a function of the request of the configuration data,configuration data are transmitted from the background system to theterminal and the terminal is automatically configured in accordance withthe configuration data. With the aid of this configuration, it ispossible to configure the parameters and/or the user interface of themobile terminals. However, the transmission of configuration data is notsuitable for testing the functionality of software applications orvalue-added services. In addition, according to the teaching of thisprior art, it is proposed that the configuration data be activated bythe mobile telephone itself. However, in the case of defectiveconfiguration data, this can lead to the execution platform of themobile terminal being disturbed and a manual configuration thus becomingnecessary.

Starting from the indicated drawbacks, the application was based on theobject of providing a method, a mobile terminal, a system and also acomputer program allowing in a simple and flexible manner a transmissionand carrying-out of control commands within the mobile terminal.

According to one subject-matter of the application, the object deducedhereinbefore and indicated from the prior art is achieved by a methodfor controlling a mobile terminal. Thereby a set of control commands isreceived in a mobile terminal comprising a processor, a subscribermodule and a communications unit. The received set of control commandsis stored in a memory of the subscriber module. After storage, functionsof the mobile terminal are activated by the subscriber module as afunction of commands of the set of control commands via an interfacebetween the subscriber module and the mobile terminal.

It has been found that the subscriber module itself, which may be forexample a Subscriber Identity Module (SIM) card, can activate and carryout the control commands. It is thus possible to carry out a set ofcontrol commands without using the processor of the mobile terminalitself. The control commands may, for example, be AT commands. ATcommands may be standard control commands for a telephone. With the aidof these control commands, it is possible to activate a broad range offunctions, for example keystrokes, within the mobile terminal. Thus,according to the application, the subscriber module carries out afunction on the mobile terminal via an interface. The subscriber modulethus controls a broad range of functions without using the processor ofthe mobile terminal itself for controlling the functions.

According to an embodiment, it is proposed that the set of controlcommands comprises at least commands for activating keystroke commandsof the mobile terminal. Thus, it is for example possible to instruct,with the aid of the control commands, the mobile terminal to activatevarious keystrokes. For example, various sequences of keystrokes can beactivated with the aid of the control commands. The set of controlcommands may be a batch of various commands. This batch can be processedin accordance with the application, allowing a sequence of variouskeystroke commands and also other commands to be carried out on themobile terminal.

It is also possible for the set of control commands to comprise a testroutine for testing a program which can be executed on the mobileterminal. The program which can be executed on the mobile terminal may,for example, be a value-added service. A value-added service of thistype may, for example, be a Multimedia Messaging Service (MMS), aPush-to-Talk service, a Wireless Access Protocol (WAP) service, aStreaming service, an Instant Messaging (IM) service, a Web Browsingservice or another service. The test routine stored in the controlcommands allows the various programs to be checked. In this case, thetest routine allows, for example, various program sequences and menustructures of the programs to be run through and their functionality tobe checked. The test routine allows, for example, a program, with allits broad range of functions and possibilities, to be checked. It isthus possible to test whether the program functions on the mobileterminal.

According to the application, it is proposed that the activating offunctions of the mobile terminal by the subscriber module emulateactions of an actual user. As opposed to the possibility of carrying outa test manually, it is proposed that, by way of the transmission of thecontrol commands to the mobile terminal, the manual key inputs bereplaced by key inputs controlled by the subscriber module. The testsequence may be identical to a manual test. The difference consists inthe fact that the subscriber module activates the mobile terminal viathe interface in order to carry out the various functions.

According to one exemplary embodiment, it is proposed that the set ofcontrol commands be transmitted by a background system. A backgroundsystem may, for example, be a GSM network, a CDMA network, a GPRSnetwork, a UMTS network, another cellular network or a wireless or wirednetwork. The set of control commands can be stored in the backgroundsystem and be transmitted, at the request of the mobile terminal, to themobile terminal via the background system.

In order to be able to check test results, it is proposed thatfunctional states of the mobile terminal be stored, after activation ofthe functions, at least in the memory of the subscriber module and/or amemory of the mobile terminal. The functional states after theactivating of individual control commands can be queried and stored. Asa result, it is possible, after the processing of a plurality of sets ofcontrol commands, to check and to evaluate retrospectively the change ofthe functional states.

In order to be able to make a precise statement concerning thefunctionality of software applications, it is possible for states of adisplay of the mobile terminal or states of the processor of the mobileterminal or items within a menu structure of the mobile terminal to bequeried and stored as functional states. As a result, it is possible tocheck whether the control commands have generated the desired reactionswithin the mobile terminal.

For example, it is possible for various desired states of the functionalstates of the mobile terminal to be defined along with the set ofcontrol commands. Based on the desired states, it is possible to checkwhether the actually attained functional states of the mobile terminalsare correct. A desired/actual comparison allows it to be checked whetherthe sequence of the sets of control commands has led to the desiredresult.

In order to be able to carry out centrally a check of the tests carriedout, it is proposed that the functional states be transmitted to thebackground system with the aid of the communications unit of the mobileterminal. In this case, it is, for example, possible for the functionalstates to be transmitted to the background system by means of shortmessages (SMS). It is also possible, for transmission of the functionalstates, for a data connection to be established between the mobileterminal and the background system and for the functional states to betransmitted via this data connection. It is, for example, possible forall the functional states attained during a sequence of a set of controlcommands to be stored in a file and for this file to be transmitted fromthe mobile terminal to the background system after processing of thecontrol commands. This transmission can, for example, also be activatedby the control commands. Good quality control is possible as a result ofthe fact that the background system stores the transmitted functionalstates. This allows the test results determined to be checkedretrospectively.

For this purpose, it is, for example, possible for the functional statesdetermined to be stored in a results database. The results database thusprovides information about a large number of different tests and can beused retrospectively to verify the tests which have been carried out.

In order to check whether the value-added services and programs testedare functioning as desired on the various terminals, it is proposed thatthe transmitted functional states be evaluated by the background system.In this case, the background system can, for example, carry out acomparison of the desired states with the transmitted functional statesand, in the event of a discrepancy, a warning signal can be issued.

It is, for example, possible to test a large number of differentvalue-added services and programs, one after another, on one and thesame mobile terminal. For this purpose, it is, for example, possible,once a first set of control commands has been processed, for said firstset of control commands to transmit the stored functional states to thebackground system. Afterwards, a new set of control commands can berequested from the background system by the subscriber module. It isalso possible, after processing of the control commands by thesubscriber module, for a new program for transmission to the mobileterminal to be requested from the background system.

It is possible first to transmit a set of control commands that isappropriate for a program to a mobile terminal, then to transmit thecorresponding program to the mobile terminal, in order subsequently tocarry out the test, which is stored in the set of control commands, onthe program on the mobile terminal in question. The requesting both ofthe new sets of control commands and of the new programs may also bedependent on the evaluation of the functional states. Thus, it may bepossible to request new sets of control commands or new programs, forexample, only when the evaluation of the functional states has yielded apositive evaluation result. It is also possible for the evaluation ofthe functional states to reveal that the actual state differs from thedesired state. In this case, it may, for example, be helpful to requestfrom the background system altered parameters for the control commandsin order to bring the functional state of the mobile terminal into thedesired state.

A request for new sets of control commands may, for example, be possiblein that the subscriber module requests a set of control commands fromthe background system by means of the communications unit of the mobileterminal. In order to be able to test a broad range of programs orvalue-added services on various mobile terminals, it is necessary todesign the sets of control commands in such a way that said sets ofcontrol commands are compatible with the mobile terminals on which theprograms can be tested. Naturally, various mobile terminals have variousmenu structures and thus require a different type of sequence ofkeystrokes in order to attain the desired states. Therefore, it may benecessary to file for each type of a mobile terminal its own set ofcontrol commands in order to be able to test a program. For this reason,it is proposed that, together with the request of the set of controlcommands, at least one identification characterising the mobile terminaland/or the subscriber module be transmitted to the background system.With the aid of the identification of the mobile terminal, thebackground system can recognise what kind and/or what type of a mobileterminal is being tested. As a function of this identification, thebackground system can select the appropriate set of control commands andtransmit it to the mobile terminal. With the aid of the appropriate setof control commands, the subscriber module can then test the mobileterminal.

It is also possible for a program to be tested already to be stored onthe mobile terminal. If this is the case, it is necessary to know, fortesting the program in the background system, which program is to betested. In this case, it is possible, together with the request of theset of control commands, for at least one identification characterisingthe program which can be executed on the mobile terminal to betransmitted to the background system. With the aid of the identificationof the program, the background system can select the set of controlcommands that is necessary for the control of the program to be tested.

According to one exemplary embodiment, it is proposed that thebackground system receives the request of the set of control commandsand transmits the set of control commands to the mobile terminal as aresponse to the request. For this purpose, the background system canselect various transmission methods.

For example, it is possible to transmit the set of control commands tothe mobile terminal as SMS, MMS or via a data connection.

As described hereinbefore, it may be necessary, for testing variousprograms on various mobile terminals, for the type of the mobileterminal and the program to be tested to be known in order to select thecorresponding set of control commands. It is therefore proposed that thebackground system evaluate the identification characterising the mobileterminal and/or the subscriber module and select, as a function of theresult of the evaluation, a set of control commands from a selection ofsets of control commands for transmission to the mobile terminal.

In order to allow a new program to be able to be requested independentlyof the processor of the mobile terminal, it is proposed that the programwhich can be executed on the mobile terminal be requested by thesubscriber module from the background system by means of thecommunications unit of the mobile terminal.

In order to select a control command which is appropriate for theprogram to be tested, the background system can evaluate theidentification characterising the program to be executed on the mobileterminal and select, as a function of the result of the evaluation, aset of control commands from a selection of sets of control commands fortransmission to the mobile terminal.

The communication between the mobile terminal and the background systemcan take place, for example, via an air interface or a cable interface.The air interface can be formed, for example, by a cellular network.

The communication between the mobile terminal and the background systemmay, for example, be packet-switched or circuit-switched.

In order to automate starting of the test, the requesting of the set ofcontrol commands and/or of the program can be started by a triggersignal triggered by the mobile terminal. A trigger signal of this typemay, for example, be the switching-on of the mobile terminal. A triggersignal may also be the plugging of the subscriber module into the mobileterminal. In this case, the set of control commands can be started inthe subscriber module by a trigger signal triggered in the mobileterminal.

It is preferred for the subscriber module to be a Subscriber IdentityModule (SIM). The subscriber module may also be a Universal SIM (USIM).The subscriber module may be suitable for carrying out sets of controlcommands. For this purpose, it is, for example, possible for thesubscriber module to be able to execute a scripting language. It is alsopossible for the subscriber module to be Java-enabled and thus for it tobe able to execute Java applications and/or applets.

It is preferred for the interface between the subscriber module and themobile terminal to be a standardised interface. This standardisedinterface may, for example, be the Subscriber Identity ModuleApplication Toolkit (SIM Toolkit) or the Universal Subscriber IdentityModule Application Toolkit (USIM Toolkit). Via these interfaces, it ispossible, for example, for AT commands or other control commands to betransmitted from the subscriber module to the mobile terminal and forthe mobile terminal to carry out these actions.

A further aspect is a method for the control of a mobile terminal byreceiving a request signal for a set of control commands which can becarried out in a subscriber module of a mobile terminal, selecting astored set of control commands for transmission to a mobile terminal,and transmitting the selected set of control commands to the mobileterminal.

In order to select a suitable set of control commands, it is proposedthat, together with the request signal, an identification characterisingthe mobile terminal and/or the subscriber module be received and that aset of control commands be selected from a selection of sets of controlcommands as a function of the identification.

A further aspect matter is a mobile terminal having a subscriber module,a processor, a communications unit configured for receiving a set ofcontrol commands, wherein the subscriber module is configured forstoring the set of control commands, and wherein the subscriber moduleis configured for activating functions of the mobile terminal as afunction of commands of the set of control commands via an interfacebetween the subscriber module and the mobile terminal.

A further aspect is a system having an above-described mobile terminaland a background system having a memory for storing at least sets ofcontrol commands and a memory for storing at least functional states ofthe mobile terminal.

A further aspect is a computer program for the control of a mobileterminal with instructions for receiving a set of control commands in amobile terminal comprising a processor, a subscriber module and acommunications unit, storing the set of control commands in a memory ofthe subscriber module, and activating of functions of the mobileterminal by the subscriber module as a function of commands of the setof control commands via an interface between the subscriber module andthe mobile terminal.

The application will be described hereinafter in greater detail withreference to drawings which show exemplary embodiments and in which:

FIG. 1 shows a system having a mobile terminal and a background system;and

FIG. 2 is a flow chart of a method according to the application.

FIG. 1 shows a system 2 having a mobile terminal 4, a background system6 which is formed from a cellular network 8 and an Over-the-Air (OTA)server 10.

The mobile terminal 4 may, for example, be a mobile telephone, asmartphone, a PDA or another terminal for communication with thebackground system 6. The mobile terminal 4 comprises a keypad 12, adisplay 14 and a processor 16.

In addition, the mobile terminal 4 comprises a memory 18 and also acommunications unit 20. Finally, the mobile terminal 4 comprises aninterface 22 for communication with a subscriber module 24.

The subscriber module 24 comprises a processor 26 and a memory 28. Thememory 28 is configured in such a way that it can store a set of controlcommands.

The background system 6 comprises the cellular network 8 and the OTAserver 10. The OTA server is connected to a first database 32 and aresults database 34 via a computer 30. Various sets of control commandsare stored in the first database 32. Various types of mobile terminalscan be associated with the sets of control commands. Various types ofprograms to be tested can also be associated with the sets of controlcommands. Thus, the first database 32 contains a library of sets ofcontrol commands which can be qualified by the type of a program and thetype of a mobile terminal.

Functional states or sets of functional states received by the computer30 via the cellular network 8 can be stored in the results database 34.In this case, it is possible to store the functional states or sets offunctional states in association with specific types of mobile terminals4 or specific programs.

The mobile terminal 4 is controlled via the keypad 12. An operatingsystem, for example J2 MB, Symbian C++, Windows Mobile, Brew, FlashLite, Linux or a different operating system, is stored in the memory 18.The operating system can be executed by the processor 16 and the mobileterminal 4 can communicate with the cellular network 8 via thecommunications unit 20. The functions of the operating system areinvoked via the processor 16. Various menu structures can be displayedvia the display 14. With the aid of the keypad 12, a user can navigatewithin the menu structure displayed on the display 14 and triggervarious functions and functionalities.

In order to provide the user, in addition to pure telephony, with anadded value through the mobile terminal, in addition to the operatingsystem, a number of different programs, such as for example value-addedservices, can be stored in the memory 18. These programs can also beinvoked by the processor 18. In order to use the value-added services,the user can use the keypad 12 and navigate accordingly through the menustructure, which is displayed via the display 14, and use the functions.

The subscriber module 24 may, for example, be a Subscriber IdentityModule (SIM) card or a Universal Subscriber Identity Module (USIM) card.The subscriber module 24 can comprise a processor 26. Furthermore, thesubscriber module 24 can compromise a computer usable medium such as amemory 28 which is divided into various memory regions. In the memory28, a set of control commands can, for example, be stored in a specificmemory region and be invoked via the processor 26. The processor 26 can,for example, be configured to execute Java programs or applications. Forexample, the subscriber module is a Java-enabled card.

The communication between the subscriber module 24 and the mobileterminal 4 takes place via the interface 22. The interface 22 may, forexample, be a SIM Application Toolkit interface. It is also possible forthe interface 22 to be a Universal SIM Application Toolkit interface.Other interfaces are also possible. Via the interface 22, the controlcommands stored in the memory 28, for example AT commands, can betransmitted to the mobile terminal 4 and thus, for example, keystrokeson the keypad 12 can be emulated. The processor 16 receives the controlcommands via the interface 22 and carries them out. For the processor16, the carrying-out of these commands is independent of whether saidcarrying-out was initiated via an actual keystroke on the keypad 12 orvia a control command via the interface 22.

The method according to the application as shown in FIG. 2 will bedescribed hereinafter in greater detail. FIG. 2 shows a sequence ofcommunication between a mobile terminal 4, a subscriber module 24 and abackground system 6. The mobile terminal 4 communicates with thesubscriber module 24 via the interface 22. The mobile terminal 4communicates with the background system 6 via an interface 36 which issupported by the communications unit 20 and the background system 8.

On switching-on 36 of the mobile terminal 4, a trigger signal 38 istransmitted to the subscriber module 24 via the interface 22. When thetrigger signal 38 is received, the subscriber module 24 checks, with itsprocessor 26 in its memory 28, the presence of a test routine, forexample in the form of control commands.

If the memory 28 contains no such test routine, the subscriber module 24transmits to the mobile terminal 4 via the interface 22 a request signalrequesting a test routine. After receiving the request signal 40, thesubscriber module 4 transmits a request signal 42 to the backgroundsystem 6 via the interface 36. The request signal 42 contains, inaddition to the designation of the requested test routine, also anidentification characterising the mobile terminal and can additionallycontain an identification characterising the subscriber module 24. Thetype of the mobile terminal can, for example, be contained in theidentification characterising the mobile terminal 4.

After receiving the request signal 42, the background system 6 checks,with the aid of the computer 30 in its first database 32, whether thereis a requested test routine for the identified type of the mobileterminal 4. If this is the case, the background system 6 transmits 44the corresponding test routine to the mobile terminal 4 via theinterface 36. The mobile terminal 4 transmits 46 the test routine to thesubscriber module 24 via the interface 22.

The test routine is stored in the memory 28 of the subscriber module 24.The processor 26 of the subscriber module 24 activates 48 the testroutine.

The test routine transmits 50 to the mobile terminal 24 a query as towhether a program associated with the test routine is stored in thememory 18 of the mobile terminal 24. If the feedback 52 is negative, thesubscriber module causes a request 54 for the program. Otherwise, thesubscriber module commences the test routine, as will be describedhereinafter.

After receiving the request 54, the mobile terminal 4 transmits arequest 56 for the program to the background system. The mobile terminal4 transmits, together with the request 56, a characterisingidentification.

After receiving the request 56, the background system determines therequested program in a manner appropriate for the identified mobileterminal 4. The program determined is loaded from the first database 32and transmitted 58 to the mobile terminal 4. The mobile terminal 4advises 60 the subscriber module 24 of the receipt of the program.

Subsequently, the processor 26 commences the test routine 62. Via theinterface 22, functions of the mobile terminal 4 are triggered andfunctional states of the mobile terminal 4 are transmitted to thesubscriber module. The functional states can be stored in the memory 24or the memory 18. Via the interface 22, AT commands can, for example, betransmitted to the mobile terminal 4. The AT commands can cause themobile terminal to react as if keys of the keypad were actually pressed.As a result, it is possible to test a menu structure and a sequence ofthe program without manual keystrokes actually being necessary. Once thetest routine 62 has expired, the subscriber module 24 causes 64 themobile terminal 4 to transmit 66 the stored functional states to thebackground system 6. In this case, in addition to the stored states, anidentification of the mobile terminal 4, the test routine, the programand/or the subscriber module 24 is also transmitted.

The background system stores in the results database 34 the transmittedfunctional states together with the identification of the mobileterminal 4, the test routine, the program and/or the subscriber module24. The background system can carry out an evaluation of the testroutine by way of a comparison of the stored functional states withdesired states and thus ascertain errors in the program.

After completion of the evaluation, the background system can transmit68 a trigger signal to the mobile terminal 4. When it receives thetrigger signal, the mobile terminal can report 70 this to the subscribermodule 24. The subscriber module can react thereto with a new request 40or a request 54 and initiate a new test of an existing program or a newtest of a new program.

The described method allows various programs and value-added services tobe tested and evaluated on the network side automatically, withoutinterventions in the operating system of the mobile terminal 4.

1. A method for controlling a mobile terminal comprising: receiving aset of control commands in the mobile terminal, the mobile terminalhaving a processor, a subscriber module and a communications unit;storing the received set of control commands in a memory of thesubscriber module for the mobile terminal; and activating functions ofthe mobile terminal by the subscriber module as a function of commandsof the set of control commands via an interface between the subscribermodule and the mobile terminal, wherein the set of control commandsincludes a batch of commands to be carried out on the mobile terminal,wherein the set of control commands comprises at least commands foractivating keystroke commands of the mobile terminal.
 2. A methodaccording to claim 1, wherein activating functions of the mobileterminal by the subscriber module emulates keystroke inputs of an actualuser.
 3. A method according to claim 1, wherein the set of controlcommands is transmitted by a background system.
 4. A method according toclaim 3, wherein at least one functional state of the mobile terminal isstored in at least one of the memory of the subscriber module and amemory of the mobile terminal, after activation of the functions of themobile terminal.
 5. A method according to claim 4, wherein the at leastone functional state is a state of the processor of the mobile terminalor a state of a display of the mobile terminal.
 6. A method according toclaim 4, wherein the at least one functional state is transmitted to thebackground system by the communications unit of the mobile terminal. 7.A method according to claim 6, wherein the background system stores theat least one transmitted functional state in a results database.
 8. Amethod according to claim 6, wherein the at least one transmittedfunctional state is evaluated by the background system.
 9. A methodaccording to claim 8, wherein sets of control commands, which arealtered by the background system as a function of the evaluation of atleast one of a functional state of the mobile terminal, new sets ofcontrol commands and new programs, are transmitted to the mobileterminal.
 10. A method according to claim 3, wherein the subscribermodule requests a program executable on the mobile terminal from thebackground system by means of the communications unit of the mobileterminal.
 11. A method according to claim 10, wherein the backgroundsystem receives the request for the program executable on the mobileterminal and transmits the program as a response to the request.
 12. Amethod according to claim 3, wherein the mobile terminal communicateswith the background system via an air interface or cable interface bymeans of the communications unit.
 13. A method according to claim 3,wherein the mobile terminal communicates with the background system in apacket-switched or circuit-switched manner by means of thecommunications unit.
 14. A method according to claim 1, wherein thesubscriber module requests the set of control commands from a backgroundsystem via the communications unit of the mobile terminal.
 15. A methodaccording to claim 14, wherein together with the request for the set ofcontrol commands, at least one identification characterizing at leastone of the mobile terminal and the subscriber module is transmitted tothe background system.
 16. A method according to claim 15, wherein thebackground system evaluates the at least one identificationcharacterizing the at least one of the mobile terminal and thesubscriber module and selects, as a function of a result of theevaluation, the set of control commands from a plurality of controlcommand sets for transmission to the mobile terminal.
 17. A methodaccording to claim 14, wherein together with the request for the set ofcontrol commands, at least one identification characterizing a programexecutable on the mobile terminal is transmitted to the backgroundsystem.
 18. A method according to claim 17, wherein the backgroundsystem evaluates the identification characterizing the programexecutable on the mobile terminal and selects, as a function of a resultof the evaluation, the set of control commands from a plurality ofcontrol command sets for transmission to the mobile terminal.
 19. Amethod according to claim 14, wherein the background system receives therequest for the set of control commands and transmits the set of controlcommands to the mobile terminal as a response to the request.
 20. Amethod according to claim 1, wherein a request for the set of controlcommands or for a program executable on the mobile terminal is startedby a trigger signal triggered by the mobile terminal.
 21. A methodaccording to claim 1, wherein receiving the set of control commandsstored in the subscriber module of the mobile terminal is started by atrigger signal triggered in the mobile terminal.
 22. A method accordingto claim 1, characterized in that wherein the interface between thesubscriber module and mobile terminal transmits is a standardizedinterface.
 23. A method according to claim 22, wherein the standardizedinterface is a Subscriber Identity Module Application Toolkit or aUniversal Subscriber Identity Module Application Toolkit interface. 24.A method according to claim 1, wherein the subscriber module is aSubscriber Identity Module.
 25. A method of controlling a mobileterminal comprising: receiving a request signal for a set of controlcommands which can be carried out by a subscriber module of the mobileterminal; and selecting in a background system the set of controlcommands requested for transmission to the mobile terminal andtransmitting the selected set of control commands from the backgroundsystem to the mobile terminal, wherein the set of control commandscomprises a batch of commands to be carried out on the mobile terminaland wherein the set of control commands comprises at least one commandfor activating, by the subscriber module, keystroke commands of themobile terminal.
 26. A method according to claim 23, wherein, togetherwith the request signal, an identification characterizing at least oneof the mobile terminal and the subscriber module is received and the setof control commands is selected from a plurality of control command setsas a function of the identification.
 27. A mobile terminal comprising: asubscriber module; a processor; and a communications unit configured forreceiving a set of control commands, wherein the subscriber module isconfigured for storing the received set of control commands, wherein thesubscriber module is also configured for activating functions of themobile terminal as a function of commands of the set of control commandsvia an interface between the subscriber module and the mobile terminal,and wherein the set of control commands comprises a batch of commands tobe carried out on the mobile terminal, wherein the set of controlcommands comprises at least one command for activating keystrokecommands of the mobile terminal.
 28. A system having a mobile terminalaccording to claim 27 and a background system having a memory forstoring at least one set of control commands and a memory for storing atleast one functional state of the mobile terminal.
 29. A non-transitorycomputer usable medium having computer readable instructions thereon,the computer readable program instructions comprising: programinstructions for receiving a set of control commands in a mobileterminal comprising a processor, a subscriber module and acommunications unit; program instructions for storing the received setof control commands in a memory of the subscriber module; and programinstructions for activating functions of the mobile terminal by thesubscriber module as a function of commands of the set of controlcommands via an interface between the subscriber module and the mobileterminal, the set of control commands including a batch of commands tobe carried out on the mobile terminal and at least one command foractivating keystroke commands of the mobile terminal.